package item

import (
	"time"
)

const SettingItemName = "setting_item"

type SettingItem struct {
	Id    int               `json:"id" orm:"auto" sql:"INT"`
	Name  map[string]string `json:"name" sql:"JSON"`
	Desc  map[string]string `json:"desc" sql:"JSON"`
	Icon  string            `json:"icon" sql:"VARCHAR"`
	Type  ItemType          `json:"type" sql:"TINYINT"`
	Group []int             `json:"group" sql:"JSON"`
	Level int               `json:"level" sql:"TINYINT"`
	// 是否是消耗类型
	IsConsume bool `json:"is_consume" sql:"TINYINT"`
	// 武器、装甲：最大数为1
	Max int `json:"max" sql:"INT"`
	// 售卖货币类型
	CoinType CoinType `json:"coin_type" sql:"TINYINT"`
	// 售卖价格
	SellPrice int `json:"sell_price" sql:"INT"`

	//// 消耗道具：附带技能key
	//SkillId int `json:"skill_id" sql:"VARCHAR"`
	//
	//// 扩展参数：玩家属性
	//Attr      []ObjectAttr  `json:"attr" sql:"JSON"`
	//AttrEvent [][]AttrEvent `json:"attrEvent" sql:"JSON"`

	// 扩展参数：游戏端
	Extend interface{} `json:"extend" sql:"JSON"`
	// 扩展参数：服务端
	Inside interface{} `json:"inside" sql:"JSON"`

	UpdateTime *time.Time `json:"update_time" orm:"updateTime" sql:"DATETIME"`
}

func (item *SettingItem) GetGroup() []int {
	return item.Group
}
